import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
// 正确导入 Element Plus
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
// 如果需要中文支持，可以导入中文语言包
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
// 导入事件总线
import { eventBus, authState, updateAuthState } from './utils/eventBus'

// 创建 Vue 应用实例
const app = createApp(App)

// 将事件总线挂载到全局属性
app.config.globalProperties.$eventBus = eventBus
app.config.globalProperties.$authState = authState
app.config.globalProperties.$updateAuthState = updateAuthState

// 全局错误处理
app.config.errorHandler = (err, vm, info) => {
  console.error('Vue 错误:', err)
  console.info('错误组件:', vm)
  console.info('错误信息:', info)
}

// 使用路由和 Element Plus
app.use(router)
app.use(ElementPlus, {
  locale: zhCn, // 设置中文语言
  size: 'medium' // 设置组件默认尺寸
})

// 挂载应用
app.mount('#app')
